home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / src / dd / TODO < prev    next >
Text File  |  1992-07-17  |  14KB  |  303 lines

  1.  
  2.  
  3.  
  4. MYKES
  5.  
  6.                 DONE BY MYKES
  7.  
  8.     *    Fixed 1-plane workbench support
  9.     *    Fixed dcc:config/dbug.prefs.  Now, you type saveprefs at the
  10.         command line, and the prefs for that window are saved.  I want
  11.         DBug to open its windows in the center of my SHR workbench...
  12.     *    Fixed the hang bug when last window is killed.  You called
  13.         CheckCloseDisplay() then did a WaitPort() on the killed
  14.         window.
  15.     *    Merged the DBugDisp (display.h) file into defs.h.
  16.     *    Added general purpose list routines.  With these routines,
  17.         you can easily generate an arbitrarily long list of text
  18.         lines with a printf-like routine.  Each list node has the
  19.         ln_Type field set to a unique value that can be "switch"ed
  20.         on in the mousebutton code.
  21.     *    Using the new list routines, I implemented several DOS and
  22.         ExecBase structure dump commands.  Those that need to evaluate
  23.         parameters DON'T as of yet - PROCESS uses ExecBase->ThisTask.
  24.     *    Enhanced the help display - alphabetical order now, and added
  25.         notes.
  26.     *    Got rid of hx68 assembly source and switched to a68K.  The _asm.asm
  27.         files are now just .asm.
  28.  
  29.                     TODO
  30.  
  31.     *    The list routines don't do UP/DOWN yet.
  32.     *    The help feature should be implemented using the list routines.
  33.     *    The help feature should be MUCH MUCH MUCH more informative.  Spend
  34.         the time needed to make HELP really awesome, in plain english,
  35.         and interactive.
  36.     *    Windows should be iconifiable.
  37.     *    ARexx desparately needs to be added.  Any startup script that
  38.         DBug executes should be written in ARexx and not some custom
  39.         home-brewed non-standard scripting language.  One ascii config
  40.         file is acceptable for those who don't have ARexx (1.3).
  41.     *    All windows should update every time I step.  If I have one
  42.         window showing a hex dump of memory somewhere, I want to see
  43.         it change dynamically as I step!
  44.     *    Hex mode also needs to have the ESC key implemented.  When
  45.         you hit ESC, the cursor jumps from command line to the
  46.         hex dump and lets you edit values there.  You should be
  47.         able to click with the mouse to move the cursor in this
  48.         mode.
  49.     *    AddMenu command needed so I can make custom menus.  These
  50.         can be executed en-mass...
  51.     *    OBEY command needs to be implemented.  Executes commands
  52.         from a "batch" file.
  53.     *    Step should optionally print registers to STDOUT window.
  54.         As you step, you get a history-like display of your
  55.         registers.  It can be turned ON/OFF with a toggle.
  56.     *    EnhanceDism() routine needs to be merged into DBug
  57.         from MykesBug - it knows about A6, A4, etc., and
  58.         makes disassembly smarter.  This is also a great place
  59.         to hook into for annotations.
  60.     *    l? w? and b? commands need to be implemented.  Display
  61.         long, word, or byte at expression - in hex, decimal,
  62.         and ascii.  The value is displayed in the STATUS line.
  63.         Good for looking at byte-wide hardware, or just seeing
  64.         the contents of a variable quickly.
  65.     *    In general, up/down scrolling needs to be implemented.
  66.         Pageup/Pagedown, too!
  67.     *    TITLE command should allow me to set the DBug windows'
  68.         titles to unique values.  OPEN should open a window
  69.         with the title "Copy of previous-window".
  70.     *    NEXTWINDOW command should bring the next window in
  71.         the display list to the front and activate it.  There
  72.         should be a prev-window, also.
  73.     *    It would be nice if DICEHELP worked from inside of
  74.         DBug... :)
  75.     *    More source oriented features.  How about GREP, search,
  76.         cut/paste/clipboard, find-function, find-variable,
  77.         and so on.
  78.     *    Function keys should be bindable.  Also, shifted
  79.         FKeys would be nice to display at the bottom, too.
  80.     *    Structure dump support for intuition and graphics
  81.         library structs.  These are going to make the
  82.         program BIG :)
  83.     *    Debugger should have ability to catch tasks added
  84.         by the program being debugged (or its children tree).
  85.     *    The CurDisplay global variable should be eliminated.
  86.         If we have some routines that use it and others that
  87.         get passed pointer to it, then the routines are
  88.         less general and can confuse the display.  Needed
  89.         especially if you do dynamic updating of windows
  90.         after single step...
  91.     *    Remote/serial debugging capability.  With and without
  92.         the OS running on the target machine.  CBM really needs
  93.         to build in ability to have multiple CPU boards in
  94.         the same Amiga.  An A500 on a zorro II board would
  95.         be killer as a testbed - makes the A3000 crash a
  96.         lot less often :)
  97.     *    DBug needs to be able to open its own custom screen or
  98.         to run on already open public screens.  The screen it
  99.         opens should be public under 2.0...
  100.  
  101.  
  102. MATTD
  103.                 DONE LIST
  104.  
  105.     *    Screen redraw doesn't get confused
  106.     *    EVAL command added, read access to regs by name D0-D7/A0-A7/PC/SP
  107.     *    Indirection added to the expression parser, e.g. eval *4
  108.     *    Infinite newline loop in mixed.c fixed, found a maxLines++
  109.     that was supposed to be maxLines--
  110.     *    Size910 in DASM.ASM does not chop D2 before branching to DSize
  111.     which uses it as an array index.  This was the cause of my
  112.     disassembly crash.  NOTE:  Fixed in dasm_a68.asm but not dasm.asm
  113.     *    DISM did a full refresh when you cursored up or down
  114.  
  115.     *    MOST COMMANDS, *Refresh() now takes additional arguments specifying
  116.     the start refresh address (instead of the refresh routine getting
  117.     it from CurDisplay->ds_WindowTop).   This allows the cursor up
  118.     and down routines to do piecemeal refresh without having to
  119.     duplicate the refresh code
  120.  
  121.     *    MOST COMMANDS, the fullRefresh boolean for the *Refresh() routines
  122.     can now take on three values: -1, 0, or 1.  -1 is used by the
  123.     piecemeal refresh routines to prevent the first status line from
  124.     being displayed, amoung other things (refer to mixed.c for an
  125.     example)
  126.  
  127.     *    MULTIPLE WINDOWS supported.  ALL variables associated with a
  128.     display have been moved into a display structure (see display.h).
  129.  
  130.     Additionally, the low level console/window IO has been rewritten to
  131.     use a single, common message port and the synchronous signal bit.
  132.  
  133.     *    ADDED OffsetAddressBuf() to DBUG.C.  Works like PrintAddress()
  134.     but loads the result into a buffer instead of outputting to
  135.     the current window.
  136.  
  137.     *    MOST COMMANDS, cursor up and down now work.  MIXED MODE refresh
  138.     has been almost completely rewritten.
  139.  
  140.     *    ScrScroll*() routines now position the cursor to the appropriate
  141.     place.    Cursor positioning after ScrScroll*() calls have been
  142.     removed.
  143.  
  144.     *    MOUSE ACTION ADDED.  CONSOLE IS NOW LOCALLY MAPPED.  Hitting the
  145.     mouse button now does extremely useful things, see help for
  146.     more info.  Console IO routines have been modified in major
  147.     ways to support this cleanly.  For example, CSI sequences must
  148.     bypass the local array map.
  149.  
  150.     *    Fixed bug in StepOver(), it was running StepTarget() for reverse
  151.     branches instead of forward branches.
  152.  
  153.     *    ScrRowCol() routine was being called with column=0 in
  154.     RefreshPrompt() instead of col=1
  155.  
  156.     *    I've made an extra line available near the bottom of the window
  157.     for future use -- e.g. more function key defs or simply keywords
  158.     that you can click on with the mouse.
  159.  
  160.     *    For some unknown reason the debugger was not passing the arguments
  161.     to the program being debugged... the initial state of D0 was not
  162.     set to the length of the argument line.  Don't know how this
  163.     happenned, I seem to remember it working before.  In anycase,
  164.     fixed.
  165.  
  166.                 TODO LIST
  167.  
  168.     *    When in offsets mode the disassembly output should display in
  169.     label+N form instead of as an absolute address
  170.  
  171.     *    SOURCE-ONLY mode does not work yet
  172.  
  173.     *    ASYNCHRONOUS ENTRY / SEPARATE TASK.  It's OK for an instance of
  174.     the debugger to debug only one task at a time, but we need to
  175.     separate the tasks out -- really make the debugger a separate
  176.     task, and allow asynchronous entry (debug an already running
  177.     task and be able to break into a task running under the debugger
  178.     for which no break points were explicitly set)
  179.  
  180.     Question is... how to do?
  181.  
  182. From uunet!ub-gate.UB.com!zorch!amiga0!mykes Thu, 16 Jul 92 04:16:58 PST
  183. Received: by overload.Berkeley.CA.US (V1.16/Amiga)
  184.     id AA00000; Thu, 16 Jul 92 04:16:58 PST
  185. Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
  186.     (5.61/UUNET-internet-primary) id AA22897; Thu, 16 Jul 92 04:48:11 -0400
  187. Received: from ub-gate.UUCP by uunet.uu.net with UUCP/RMAIL
  188.     (queueing-rmail) id 044739.5206; Thu, 16 Jul 1992 04:47:39 EDT
  189. Received: from zorch.UUCP by ub-gate.UB.com (4.1/SMI-4.1[UB-1.8])
  190.     id AA29096; Thu, 16 Jul 92 01:39:07 PDT
  191. Received: by zorch.SF-Bay.ORG (/\==/\ Smail3.1.22.1 #22.2)
  192.     id <m0m8Qww-000HUqC@zorch.SF-Bay.ORG>; Thu, 16 Jul 92 01:12 PDT
  193. Received: by amiga0.SF-Bay.ORG (V1.16/Amiga)
  194.     id AA00970; Thu, 16 Jul 92 01:07:56 PST
  195. Date: Thu, 16 Jul 92 01:07:56 PST
  196. Message-Id: <9207160907.AA0096z@amiga0.SF-Bay.ORG>
  197. From: uunet!ub-gate.UB.com!amiga0.SF-Bay.ORG!mykes (Mike Schwartz)
  198. To: overload!dillon
  199. Subject: DBug feature idea
  200.  
  201. DBug should compare your SP with your SPUpper and SPLower when
  202. it does Refresh() so it can alert you to stack under/overflow
  203. conditions (each step, breakpoint, etc.).
  204.  
  205.  
  206. Author of Amiga GRn, MailMinder, Budokan, Beyond Dark Castle, Dark Castle,
  207. and Genesis Dick Tracy and Marble Madness.
  208. Mike Schwartz  (ames!zorch!amiga0!mykes or mykes@amiga0.sf-bay.org)
  209. 1124 Fremont Ave.
  210. Los Altos, CA 94024
  211.  
  212. From uunet!ub-gate.UB.com!zorch!amiga0!mykes Thu, 16 Jul 92 04:16:55 PST
  213. Received: by overload.Berkeley.CA.US (V1.16/Amiga)
  214.     id AA00000; Thu, 16 Jul 92 04:16:55 PST
  215. Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
  216.     (5.61/UUNET-internet-primary) id AA22222; Thu, 16 Jul 92 04:48:07 -0400
  217. Received: from ub-gate.UUCP by uunet.uu.net with UUCP/RMAIL
  218.     (queueing-rmail) id 044740.5211; Thu, 16 Jul 1992 04:47:40 EDT
  219. Received: from zorch.UUCP by ub-gate.UB.com (4.1/SMI-4.1[UB-1.8])
  220.     id AA29104; Thu, 16 Jul 92 01:39:12 PDT
  221. Received: by zorch.SF-Bay.ORG (/\==/\ Smail3.1.22.1 #22.2)
  222.     id <m0m8R4g-000HUqC@zorch.SF-Bay.ORG>; Thu, 16 Jul 92 01:20 PDT
  223. Received: by amiga0.SF-Bay.ORG (V1.16/Amiga)
  224.     id AA00975; Thu, 16 Jul 92 01:15:11 PST
  225. Date: Thu, 16 Jul 92 01:15:11 PST
  226. Message-Id: <9207160915.AA00974@amiga0.SF-Bay.ORG>
  227. From: uunet!ub-gate.UB.com!amiga0.SF-Bay.ORG!mykes (Mike Schwartz)
  228. To: overload!dillon
  229. Subject: DBug feature idea
  230.  
  231. DBug should do something about the case when you GO with no breakpoints,
  232. and your program goes into infinite loop.  We can use Signal Exception
  233. to deal with ^C (or other system sigbit...).
  234.  
  235.  
  236. Author of Amiga GRn, MailMinder, Budokan, Beyond Dark Castle, Dark Castle,
  237. and Genesis Dick Tracy and Marble Madness.
  238. Mike Schwartz  (ames!zorch!amiga0!mykes or mykes@amiga0.sf-bay.org)
  239. 1124 Fremont Ave.
  240. Los Altos, CA 94024
  241.  
  242. From uunet!ub-gate.UB.com!zorch!amiga0!mykes Thu, 16 Jul 92 04:16:52 PST
  243. Received: by overload.Berkeley.CA.US (V1.16/Amiga)
  244.     id AA00000; Thu, 16 Jul 92 04:16:52 PST
  245. Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
  246.     (5.61/UUNET-internet-primary) id AA27494; Thu, 16 Jul 92 05:40:03 -0400
  247. Received: from ub-gate.UUCP by uunet.uu.net with UUCP/RMAIL
  248.     (queueing-rmail) id 053845.11079; Thu, 16 Jul 1992 05:38:45 EDT
  249. Received: from zorch.UUCP by ub-gate.UB.com (4.1/SMI-4.1[UB-1.8])
  250.     id AA01043; Thu, 16 Jul 92 02:24:57 PDT
  251. Received: by zorch.SF-Bay.ORG (/\==/\ Smail3.1.22.1 #22.2)
  252.     id <m0m8Rjg-000HUsC@zorch.SF-Bay.ORG>; Thu, 16 Jul 92 02:02 PDT
  253. Received: by amiga0.SF-Bay.ORG (V1.16/Amiga)
  254.     id AA0097f; Thu, 16 Jul 92 01:59:28 PST
  255. Date: Thu, 16 Jul 92 01:59:28 PST
  256. Message-Id: <9207160959.AA0097e@amiga0.SF-Bay.ORG>
  257. From: uunet!ub-gate.UB.com!amiga0.SF-Bay.ORG!mykes (Mike Schwartz)
  258. To: overload!dillon
  259. Subject: more dbug stuff
  260.  
  261. sorry to send so many messages, don't reply to any of them..
  262.  
  263. Source and Mixed mode appear to be the same thing.
  264.  
  265.  
  266. Author of Amiga GRn, MailMinder, Budokan, Beyond Dark Castle, Dark Castle,
  267. and Genesis Dick Tracy and Marble Madness.
  268. Mike Schwartz  (ames!zorch!amiga0!mykes or mykes@amiga0.sf-bay.org)
  269. 1124 Fremont Ave.
  270. Los Altos, CA 94024
  271.  
  272. From uunet!ub-gate.UB.com!zorch!amiga0!mykes Thu, 16 Jul 92 04:16:47 PST
  273. Received: by overload.Berkeley.CA.US (V1.16/Amiga)
  274.     id AA00000; Thu, 16 Jul 92 04:16:47 PST
  275. Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
  276.     (5.61/UUNET-internet-primary) id AA27481; Thu, 16 Jul 92 05:40:02 -0400
  277. Received: from ub-gate.UUCP by uunet.uu.net with UUCP/RMAIL
  278.     (queueing-rmail) id 053844.11073; Thu, 16 Jul 1992 05:38:44 EDT
  279. Received: from zorch.UUCP by ub-gate.UB.com (4.1/SMI-4.1[UB-1.8])
  280.     id AA01035; Thu, 16 Jul 92 02:24:55 PDT
  281. Received: by zorch.SF-Bay.ORG (/\==/\ Smail3.1.22.1 #22.2)
  282.     id <m0m8Rjf-000HUqC@zorch.SF-Bay.ORG>; Thu, 16 Jul 92 02:02 PDT
  283. Received: by amiga0.SF-Bay.ORG (V1.16/Amiga)
  284.     id AA0097a; Thu, 16 Jul 92 01:56:59 PST
  285. Date: Thu, 16 Jul 92 01:56:59 PST
  286. Message-Id: <9207160956.AA00979@amiga0.SF-Bay.ORG>
  287. From: uunet!ub-gate.UB.com!amiga0.SF-Bay.ORG!mykes (Mike Schwartz)
  288. To: overload!dillon
  289. Subject: DBug bug report
  290.  
  291. I found a bug in DBug that needs to be fixed before you send it out.
  292. When you open two or more windows and quit any one of them, all are
  293. closed and the program exits.  I didn't track down why, because I
  294. am busy with the docs.  Note the late hour :(
  295.  
  296.  
  297. Author of Amiga GRn, MailMinder, Budokan, Beyond Dark Castle, Dark Castle,
  298. and Genesis Dick Tracy and Marble Madness.
  299. Mike Schwartz  (ames!zorch!amiga0!mykes or mykes@amiga0.sf-bay.org)
  300. 1124 Fremont Ave.
  301. Los Altos, CA 94024
  302.  
  303.